home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #15 / Monster Media Number 15 (Monster Media)(July 1996).ISO / prog_c / cscop122.zip / STACK.C < prev    next >
Text File  |  1996-05-01  |  471b  |  38 lines

  1. #include <stdio.h>
  2.  
  3. #define MAXVAL 100
  4.  
  5. int sp = 0;
  6. double val[MAXVAL], push(double f), pop(void);
  7. void clear(void);
  8.  
  9.  
  10. double push(double f)
  11. {
  12.   if (sp < MAXVAL)
  13.     return(val[sp++] = f);
  14.   else
  15.   { printf("error: stack full\n");
  16.     clear();
  17.     return(0);
  18.   }
  19. }
  20.  
  21.  
  22. double pop(void)
  23. {
  24.   if (sp > 0)
  25.     return(val[--sp]);
  26.   else
  27.   { printf("error: stack empty\n");
  28.     clear();
  29.     return(0);
  30.   }
  31. }
  32.  
  33.  
  34. void clear(void)
  35. {
  36.   sp = 0;
  37. }
  38.